package com.xique.park.constant;

import lombok.experimental.UtilityClass;

/**
 * 下发命令数据拼接用到的常量类
 *
 * @author xique
 */
@UtilityClass
public class CommandConstant {

    public static final String DATA = "data";

    public static final String REC_IDS = "rec_ids";

    public static final String LIST = "list";

    /* ------------------------- V3 版本API服务接口下发参数，map的key ------------------------- */

    /**
     * 记录的id列表
     */
    public static final String IDS = "ids";

    /**
     * 下发给设备的数据内容
     */
    public static final String DT = "dt";

    /* ------------------------- 车场参数 key ------------------------- */

    /**
     * 车场ID
     */
    public static final String PARK_ID = "park_id";

    /**
     * 车场模式
     */
    public static final String MODEL = "model";

    /**
     * 边缘网关云系统
     */
    public static final int MODEL_EDGE = 1;

    /**
     * 边缘计算云系统
     */
    public static final int MODEL_CLOUD = 2;

    /**
     * 边缘计算云系统（云岗亭版）
     */
    public static final int MODEL_GENERAL = 3;

    /**
     * 支付后免计费离场时间
     */
    public static final String PAY_STAY_TIME = "pay_stay_time";

    /**
     * 是否启用电子优惠券
     */
    public static final String IS_DISCOUNT = "is_discount";
    public static final int IS_DISCOUNT_Y = 1;
    public static final int IS_DISCOUNT_N = 0;

    /**
     * 月卡车过期前提醒天数
     */
    public static final String BROADCAST_DAYS = "broadcast_days";

    /**
     * 月卡车过期宽限天数
     */
    public static final String RENEW_DAYS = "renew_days";

    /**
     * 军警车是否收费
     */
    public static final String IS_POLICE_FEE = "is_fee_police";
    public static final int IS_POLICE_FEE_Y = 1;
    public static final int IS_POLICE_FEE_N = 0;

    /**
     * 边缘网关IP
     */
    public static final String EDGE_GATEWAY = "edge_gateway";

    /**
     * 是否开启剩余车位功能
     */
    public static final String EN_REMAIN = "en_remain";

    /**
     * 关闭剩余车位功能
     */
    public static final int EN_REMAIN_NO = 0;

    /**
     * 开启剩余车位功能
     */
    public static final int EN_REMAIN_YES = 1;

    /**
     * 车场状态
     */
    public static final String STATUS = "status";

    /* ------------------------- 车库数 key ------------------------- */

    public static final String GARAGE_ID = "garage_id";
    public static final String PARENT_GARAGE_ID = "parent_garage_id";
    public static final String SPACE_CNT = "space_cnt";
    public static final String ADJUST_SPACE_CNT = "adjust_space_cnt";
    public static final String GARAGES = "garages";

    /* ------------------------- 命令 cmd ------------------------- */

    /**
     * 手动入场 | 出场
     */
    public static final String MARK_CAR_IN_OR_OUT_CMD = "27";

    /**
     * 道闸控制
     */
    public static final String SET_OR_CLOSE_GATE_CMD = "12";

    /**
     * 远程开闸 （业务逻辑上使用，实际下发命令中不要使用）
     */
    public static final String SET_GATE_CMD = "12-1";

    /**
     * 远程关闸 （业务逻辑上使用，实际下发命令中不要使用）
     */
    public static final String CLOSE_GATE_CMD = "12-2";

    /**
     * 无牌车入场
     */
    public static final String MARK_UNLICENSED_CAR_IN = "200";
}
